<?php

//////////////////////////////////////////////////////////////////////////////80
// Settings Class
//////////////////////////////////////////////////////////////////////////////80
// Copyright (c) Atheos & Liam Siira (Atheos.io), distributed as-is and without
// warranty under the modified License: MIT - Hippocratic 1.2: firstdonoharm.dev
// See [root]/license.md for more. This information must remain intact.
//////////////////////////////////////////////////////////////////////////////80
// Authors: Codiad Team, @Fluidbyte, Atheos Team, @hlsiira
//////////////////////////////////////////////////////////////////////////////80

class Settings {

	//////////////////////////////////////////////////////////////////////////80
	// PROPERTIES
	//////////////////////////////////////////////////////////////////////////80

	public $username = '';
	private $settings = '';

	//////////////////////////////////////////////////////////////////////////80
	// METHODS
	//////////////////////////////////////////////////////////////////////////80

	// ----------------------------------||---------------------------------- //

	//////////////////////////////////////////////////////////////////////////80
	// Construct
	//////////////////////////////////////////////////////////////////////////80
	public function __construct() {
		$this->settings = Common::readJSON('settings');
		if ($this->username) {
			if (!$this->settings) {
				$this->settings = array(
					$this->username => array("username" => $this->username)
				);
			} elseif (!$this->settings[$this->username]) {
				$this->settings[$this->username] = array("username" => $this->username);
			}
		}
	}

	//////////////////////////////////////////////////////////////////////////80
	// Load User Settings
	//////////////////////////////////////////////////////////////////////////80
	public function load() {
		if (array_key_exists($this->username, $this->settings)) {
			Common::sendJSON("success", $this->settings[$this->username]);
		} else {
			Common::sendJSON("error", "Settings for user not found.");
		}
	}

	//////////////////////////////////////////////////////////////////////////80
	// Save User Settings
	//////////////////////////////////////////////////////////////////////////80
	public function save($key, $value) {
		$this->settings[$this->username][$key] = $value;
		Common::saveJSON("settings", $this->settings);
		Common::sendJSON("S2000");
	}


}